package com.sg.dto.integration.app;

import com.sg.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * @desc ImplementSegQueryReportTaskSchComReqDto
 * @使用场景
 */
@Data
public class ImplementSegQueryReportTaskSchComReqDto
        extends BaseDto
        implements Serializable {

    /**
     * 数据对象表名
     */
    @NotNull(message = "数据对象表名不能为空")
    @ApiModelProperty("数据对象表名")
    private String businessDataSetTableName;

    /**
     * 数据条数
     */
    @NotNull(message = "数据条数不能为空")
    @ApiModelProperty("数据条数")
    private Long datasNum;

    /**
     * 排序字段名
     */
    @NotNull(message = "排序字段名不能为空")
    @ApiModelProperty("排序字段名")
    private String orderFieldName;

    /**
     * 排序规则 FROM_LARGE_TO_SMALL:数据值从大到小 FROM_SMALL_TO_LARGE:数据值从小到大
     */
    @NotNull(message = "排序规则不能为空")
    @ApiModelProperty("排序规则")
    private String orderRule;

    /**
     * 数据对象主键名
     */
    @NotNull(message = "数据对象主键名不能为空")
    @ApiModelProperty("数据对象主键名")
    private String businessDataSetPrimaryKeyName;

    /**
     * 最后一条数据对象ID
     */
    @ApiModelProperty("最后一条数据对象ID")
    private String lastDataObjectId;

    /**
     * 任务调度类型编码
     */
    @ApiModelProperty("任务调度类型编码")
    private String taskDispatchTypeCode;

    /**
     * 任务调度的行为类型编码
     */
    @ApiModelProperty("任务调度的行为类型编码")
    private String dispatchActionTypeCode;

    /**
     * 归属对象类型编码
     */
    @ApiModelProperty("归属对象类型编码")
    private String objectTypeCode;

    /**
     * 生成规则信息类型编码
     */
    @ApiModelProperty("生成规则信息类型编码")
    private String addRuleInfoTypeCode;

    /**
     * 是否补偿任务
     */
    @ApiModelProperty("是否补偿任务")
    private String isCompensateTask;

    /**
     * 是否执行完成
     */
    @ApiModelProperty("是否执行完成")
    private String isComplete;

    /**
     * 空间ID
     */
    @ApiModelProperty("空间ID")
    private String spaceId;

}
